Main focus of this side project is to find phase-transition which
happen when we are changing
boundary/Acceptability of different opinion and
Narrowness of identity group. Result should be a simple
graph showing how ESBG polarization changes with change of
Acceptability of different opinion and
Narrowness of identity group.
Note: Experiment is still running, we are at 26 complete sets of all
values combinations out of 120. Also note, that it seems that we are not
done yet, we probably will need more sets than 120 and more values of
Narrowness of identity group.
Data are at https://github.com/frantisek901/Spirals/tree/master/Experiment.
Experiment is still running and I, FranČesko, from time to time
actualize the *.csv files at GitHub, then I run script
experiment.R which loads the data. Now, 2022-03-25, we are
at 20 %, roughly. Who is not interested in working with megabytes of
*.csv files, might use compiled
phase2w.RData.
Now we load and aggregate these data and factorize and rename selected variables:
## Loading stored data
load("phase2w.RData")
## Firstly, we have to find, what is the highest complete RS, i.e. set of all parameters' combinations simulated:
RS_complete = (phase2w %>% group_by(RS) %>% summarise(n = n()) %>% filter(n == max(n)))$RS
## Preparing individual data 'dfi'
dfi = phase2w %>%
## Filtering variables:
filter(RS %in% RS_complete, identity) %>% # | (RS >= 61 & RS <= 96),
## Denormalizing ESBG:
mutate(ESBG = ESBG * sqrt(opinions))
## Summarising 'dfi' into 'dfs':
dfs = dfi %>%
group_by(opinions, boundary, identity, id_threshold) %>%
summarise(ESBG = mean(ESBG)) %>% ungroup() %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:4, c("Opinion dimensions:", "Acceptability of different opinion:", "Identity:",
"Narrowness of identity group:"))
I de-normalized ESBG, i.e. I multiply. I just noticed that systematically ESBG is lower and also much denser in higher dimensions. I have also substantive/philosophical reasons for this de-normalization, now I will try it and describe the reasons for de-normalization later in detail. But just briefly:
I think that agents do not know in how many dimensions they are and what is the maximum posible distance, they feel polarisation reegarding the other group not regarding the group and the possible maxima of distance, let’s do following thought experiment:
Our agents living in 1D, they discuss just one topic, they are divided in two camps of equal size and these two camps are at the poles -1 and +1 of their opinion space, the polarization is maximal, ESBG is 1. Then we take this strange world on a string and put it on the table, now they are in 2D world, their distance is same since the don’t change it, they should stil feel polarization of margin ESBG=1 since nothing changed. Then we recognize that table is in the roomm – 3D, then we rocignize time – 4D… But polarization should be still same, since these agent don’t change their positions.
So, this was the argument :-) and now let’s look, how results change after de-normalization of ESBG…
GREAT! Results look GREAT! Now the polarization is more ballanced over dimensions, but still, even after de-normalization, holds true that the more dimensions the less polarization.
Now, let’s show our results graphically!
dfs %>%
ggplot() +
aes(x = `Acceptability of different opinion:`, col = ESBG, fill = ESBG,
y = `Narrowness of identity group:`) +
facet_wrap(vars(`Opinion dimensions:`), ncol=3) +
geom_point(alpha = 1, size = 1.75, shape = 22) +
scale_fill_gradient2(low = "green", mid = "red", high = "black", midpoint = 0.3) +
scale_color_gradient2(low = "green", mid = "red", high = "black", midpoint = 0.3) +
scale_y_continuous(breaks = seq(0.05, 0.85, 0.05)) +
scale_x_continuous(breaks = seq(0.05, 0.50, 0.05)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4), 'Narrowness of identity group' (0.05--0.85) and\n'Average acceptability of different opinions' (0.05--0.5)",
x = "Average acceptability of different opinions") +
guides(alpha = "none") +
theme_minimal() +
theme(legend.position = "top")
Just for a try, same map, but more detailed and with panels organized in column insted of in a row:
dfs %>%
ggplot() +
aes(x = `Acceptability of different opinion:`, fill = ESBG, col = ESBG, label = round(100*ESBG, 0),
y = `Narrowness of identity group:`) +
facet_wrap(vars(`Opinion dimensions:`), ncol=1) +
geom_point(alpha = 1, size = 6.6, shape = 22) +
geom_text(color = "white", size = 2) +
scale_fill_gradient2(low = "green", mid = "red", high = "black", midpoint = 0.3) +
scale_color_gradient2(low = "green", mid = "red", high = "black", midpoint = 0.3) +
scale_y_continuous(breaks = seq(0.05, 0.85, 0.05), labels = seq(0.05, 0.85, 0.05)) +
scale_x_continuous(breaks = seq(0.05, 0.50, 0.05), labels = seq(0.05, 0.50, 0.05)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4), 'Narrowness of identity group' (0.05--0.85) and\n'Average acceptability of different opinions' (0.05--0.5)",
x = "Average acceptability of different opinions",
caption = "Note: Numbers indicate polarization, they are equal to `round(100 * ESBG, 0)`.") +
guides(alpha = "none") +
theme_minimal() +
theme(legend.position = "top")
For the first graph on pulped clouds we aggregate
Acceptability of different opinion into 13 categories (we
just round 121 original values to 2 digits). Two different levels of
polarization are seeable here, but it doesn’t look like clouds…
## For presenting variability we try now boxplots on individual data (non-aggregated):
dfi %>%
filter(round(100 * id_threshold, 0) %in% seq(5, 85, 10)) %>%
# sample_n(2000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
mutate(id_threshold = factor(id_threshold),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot() +
aes(x = `Acceptability of different opinion:`, y = ESBG,
fill = `Narrowness of identity group:`,
col = `Narrowness of identity group:`,
group = `Acceptability of different opinion:`) +
facet_wrap(vars(`Narrowness of identity group:`, `Opinion dimensions:`), ncol=3) +
geom_boxplot(alpha = 0.2) +
geom_jitter(alpha = 0.2) +
scale_x_continuous(breaks = seq(0.05, 0.50, 0.05)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.05--0.85) and 'Average acceptability of different opinions' (0.05--0.5)",
x = "Average acceptability of different opinions", y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
Now same graph, but with every value:
## For presenting variability we try now boxplots on individual data (non-aggregated):
dfi %>%
# sample_n(20000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
## Changing some variables to factors:
mutate(id_threshold = factor(id_threshold),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot() +
aes(x = `Acceptability of different opinion:`, y = ESBG,
fill = `Narrowness of identity group:`,
col = `Narrowness of identity group:`,
group = `Acceptability of different opinion:`) +
facet_wrap(vars(`Narrowness of identity group:`, `Opinion dimensions:`), ncol=3) +
geom_boxplot(alpha = 0.2) +
geom_jitter(alpha = 0.2) +
scale_x_continuous(breaks = seq(0.05, 0.50, 0.05)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.05--0.85) and 'Average acceptability of different opinions' (0.05--0.5)",
x = "Average acceptability of different opinions", y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
Now, same data but slightly different graph
## For presenting variability we try now scatter plot only on individual data (non-aggregated):
dfi %>%
filter(round(100 * id_threshold, 0) %in% seq(5, 85, 10)) %>%
# sample_n(2000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
## Changing some variables to factors:
mutate(id_threshold = factor(id_threshold),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot(aes(x = `Acceptability of different opinion:`, y = ESBG,
fill = `Narrowness of identity group:`,
col = `Narrowness of identity group:`,
group = `Acceptability of different opinion:`)) +
facet_wrap(vars(`Narrowness of identity group:`, `Opinion dimensions:`), ncol=3) +
geom_point(alpha = 0.15) +
scale_x_continuous(breaks = seq(0.05, 0.50, 0.05)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.05--0.85) and 'Average acceptability of different opinions' (0.05--0.5)",
x = "Average acceptability of different opinions", y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
## For presenting variability we try now scatter plot on individual data (non-aggregated):
dfi %>%
# sample_n(2000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
## Changing some variables to factors:
mutate(id_threshold = factor(id_threshold),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot(aes(x = `Acceptability of different opinion:`, y = ESBG,
fill = `Narrowness of identity group:`,
col = `Narrowness of identity group:`,
group = `Acceptability of different opinion:`)) +
facet_wrap(vars(`Narrowness of identity group:`, `Opinion dimensions:`), ncol=3) +
geom_point(alpha = 0.15) +
scale_x_continuous(breaks = seq(0.05, 0.50, 0.05)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.35--0.6) and 'Average acceptability of different opinions' (0.05--0.3)",
x = "Average acceptability of different opinions", y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
Acceptability and
NarrownessFor this set of graph we flip the perspective – we set
Acceptability of different opinion as slicing variable,
associated with color/fill, on the X axis we assign
Narrowness of identity group. Let’s hope, it helps
understand the 2-way phase transition better.
## For presenting variability we try now boxplots on individual data (non-aggregated):
dfi %>%
filter(round(100 * boundary, 1) %in% seq(5, 50, 5)) %>%
# sample_n(2000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
mutate(boundary = factor(boundary),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot() +
aes(fill = `Acceptability of different opinion:`, y = ESBG,
x = `Narrowness of identity group:`,
group = `Narrowness of identity group:`,
col = `Acceptability of different opinion:`) +
facet_wrap(vars(`Acceptability of different opinion:`, `Opinion dimensions:`), ncol=3) +
geom_boxplot(alpha = 0.2) +
geom_jitter(alpha = 0.2) +
scale_x_continuous(breaks = seq(0.05, 0.850, 0.1)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.05--0.85) and 'Average acceptability of different opinions' (0.05--0.5)",
y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
Now same graph, but with every value:
## For presenting variability we try now boxplots on individual data (non-aggregated):
dfi %>%
# sample_n(2000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
mutate(boundary = factor(boundary),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot() +
aes(fill = `Acceptability of different opinion:`, y = ESBG,
x = `Narrowness of identity group:`,
group = `Narrowness of identity group:`,
col = `Acceptability of different opinion:`) +
facet_wrap(vars(`Acceptability of different opinion:`, `Opinion dimensions:`), ncol=3) +
geom_boxplot(alpha = 0.2) +
geom_jitter(alpha = 0.2) +
scale_x_continuous(breaks = seq(0.05, 0.85, 0.1)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.05--0.85) and 'Average acceptability of different opinions' (0.05--0.5)",
y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
Now, same data but slightly different graph
## For presenting variability we try now boxplots on individual data (non-aggregated):
dfi %>%
filter(round(100 * boundary, 0) %in% seq(5, 50, 5)) %>%
# sample_n(2000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
## Changing some variables to factors:
mutate(boundary = factor(boundary),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot(aes(fill = `Acceptability of different opinion:`, y = ESBG,
x = `Narrowness of identity group:`,
col = `Acceptability of different opinion:`)) +
facet_wrap(vars(`Acceptability of different opinion:`, `Opinion dimensions:`), ncol=3) +
geom_point(alpha = 0.15) +
scale_x_continuous(breaks = seq(0.05, 0.85, 0.1)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.05--0.85) and 'Average acceptability of different opinions' (0.05--0.5)",
y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
Now, same graph again with complete data:
## For presenting variability we try now boxplots on individual data (non-aggregated):
dfi %>%
# sample_n(2000) %>%
## Selecting variables:
select(opinions, boundary, id_threshold, ESBG) %>%
## Changing some variables to factors:
mutate(boundary = factor(boundary),
opinions = factor(opinions)) %>%
## Renaming variables according 2022-03-18 meeting:
prejmenuj(1:3, c("Opinion dimensions:", "Acceptability of different opinion:",
"Narrowness of identity group:")) %>%
## Graph itself:
ggplot(aes(fill = `Acceptability of different opinion:`, y = ESBG,
x = `Narrowness of identity group:`,
col = `Acceptability of different opinion:`)) +
facet_wrap(vars(`Acceptability of different opinion:`, `Opinion dimensions:`), ncol=3) +
geom_point(alpha = 0.15) +
scale_x_continuous(breaks = seq(0.05, 0.85, 0.1)) +
labs(title = "Change of polarization in simulations by 'Opinion dimensions' (1, 2, 4),\n'Narrowness of identity group' (0.05--0.85) and 'Average acceptability of different opinions' (0.05--0.5)",
y = "Polarization") +
guides(fill = "none", color = "none") +
theme_minimal() +
theme(legend.position = "top")
m = lm(ESBG ~ factor(opinions)+id_threshold+boundary, data = filter(dfi, identity))
ms = summary(m)
p1 = lm(ESBG ~ factor(opinions)+factor(id_threshold)+factor(boundary), data = filter(dfi, identity))
p1s = summary(p1)
p1s
##
## Call:
## lm(formula = ESBG ~ factor(opinions) + factor(id_threshold) +
## factor(boundary), data = filter(dfi, identity))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.47473 -0.07893 -0.00562 0.06097 0.63368
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.2022701 0.0024221 83.509 < 2e-16 ***
## factor(opinions)2 -0.0909953 0.0005244 -173.520 < 2e-16 ***
## factor(opinions)4 -0.1346642 0.0005244 -256.792 < 2e-16 ***
## factor(id_threshold)0.06 0.0003331 0.0027249 0.122 0.90271
## factor(id_threshold)0.07 0.0004884 0.0027249 0.179 0.85774
## factor(id_threshold)0.08 -0.0002519 0.0027249 -0.092 0.92636
## factor(id_threshold)0.09 0.0006696 0.0027249 0.246 0.80588
## factor(id_threshold)0.1 0.0016191 0.0027249 0.594 0.55239
## factor(id_threshold)0.11 0.0018439 0.0027249 0.677 0.49861
## factor(id_threshold)0.12 0.0042212 0.0027249 1.549 0.12135
## factor(id_threshold)0.13 0.0042272 0.0027249 1.551 0.12083
## factor(id_threshold)0.14 0.0044305 0.0027249 1.626 0.10397
## factor(id_threshold)0.15 0.0059338 0.0027249 2.178 0.02944 *
## factor(id_threshold)0.16 0.0061466 0.0027249 2.256 0.02409 *
## factor(id_threshold)0.17 0.0063027 0.0027249 2.313 0.02072 *
## factor(id_threshold)0.18 0.0068392 0.0027249 2.510 0.01208 *
## factor(id_threshold)0.19 0.0074397 0.0027249 2.730 0.00633 **
## factor(id_threshold)0.2 0.0075525 0.0027249 2.772 0.00558 **
## factor(id_threshold)0.21 0.0109810 0.0027249 4.030 5.58e-05 ***
## factor(id_threshold)0.22 0.0116832 0.0027249 4.288 1.81e-05 ***
## factor(id_threshold)0.23 0.0122133 0.0027249 4.482 7.39e-06 ***
## factor(id_threshold)0.24 0.0137915 0.0027249 5.061 4.17e-07 ***
## factor(id_threshold)0.25 0.0197916 0.0027249 7.263 3.79e-13 ***
## factor(id_threshold)0.26 0.0189445 0.0027249 6.952 3.60e-12 ***
## factor(id_threshold)0.27 0.0227269 0.0027249 8.340 < 2e-16 ***
## factor(id_threshold)0.28 0.0240988 0.0027249 8.844 < 2e-16 ***
## factor(id_threshold)0.29 0.0292384 0.0027249 10.730 < 2e-16 ***
## factor(id_threshold)0.3 0.0383893 0.0027249 14.088 < 2e-16 ***
## factor(id_threshold)0.31 0.0457935 0.0027249 16.806 < 2e-16 ***
## factor(id_threshold)0.32 0.0526666 0.0027249 19.328 < 2e-16 ***
## factor(id_threshold)0.33 0.0590511 0.0027249 21.671 < 2e-16 ***
## factor(id_threshold)0.34 0.0658283 0.0027249 24.158 < 2e-16 ***
## factor(id_threshold)0.35 0.0713709 0.0027249 26.192 < 2e-16 ***
## factor(id_threshold)0.36 0.0787360 0.0027249 28.895 < 2e-16 ***
## factor(id_threshold)0.37 0.0899753 0.0027249 33.020 < 2e-16 ***
## factor(id_threshold)0.38 0.0989856 0.0027249 36.326 < 2e-16 ***
## factor(id_threshold)0.39 0.1138922 0.0027249 41.797 < 2e-16 ***
## factor(id_threshold)0.4 0.1272651 0.0027249 46.704 < 2e-16 ***
## factor(id_threshold)0.41 0.1417062 0.0027249 52.004 < 2e-16 ***
## factor(id_threshold)0.42 0.1551774 0.0027249 56.948 < 2e-16 ***
## factor(id_threshold)0.43 0.1684416 0.0027249 61.815 < 2e-16 ***
## factor(id_threshold)0.44 0.1766043 0.0027249 64.811 < 2e-16 ***
## factor(id_threshold)0.45 0.1882367 0.0027249 69.080 < 2e-16 ***
## factor(id_threshold)0.46 0.1975317 0.0027249 72.491 < 2e-16 ***
## factor(id_threshold)0.47 0.2093431 0.0027249 76.826 < 2e-16 ***
## factor(id_threshold)0.48 0.2226912 0.0027249 81.724 < 2e-16 ***
## factor(id_threshold)0.49 0.2321232 0.0027249 85.186 < 2e-16 ***
## factor(id_threshold)0.5 0.2407158 0.0027249 88.339 < 2e-16 ***
## factor(id_threshold)0.51 0.2499901 0.0027249 91.742 < 2e-16 ***
## factor(id_threshold)0.52 0.2525317 0.0027249 92.675 < 2e-16 ***
## factor(id_threshold)0.53 0.2584318 0.0027249 94.840 < 2e-16 ***
## factor(id_threshold)0.54 0.2599984 0.0027249 95.415 < 2e-16 ***
## factor(id_threshold)0.55 0.2647130 0.0027249 97.146 < 2e-16 ***
## factor(id_threshold)0.56 0.2663560 0.0027249 97.749 < 2e-16 ***
## factor(id_threshold)0.57 0.2599419 0.0027249 95.395 < 2e-16 ***
## factor(id_threshold)0.58 0.2583622 0.0027249 94.815 < 2e-16 ***
## factor(id_threshold)0.59 0.2569294 0.0027249 94.289 < 2e-16 ***
## factor(id_threshold)0.6 0.2547712 0.0027249 93.497 < 2e-16 ***
## factor(id_threshold)0.61 0.2493697 0.0027249 91.515 < 2e-16 ***
## factor(id_threshold)0.62 0.2454614 0.0027249 90.081 < 2e-16 ***
## factor(id_threshold)0.63 0.2432269 0.0027249 89.260 < 2e-16 ***
## factor(id_threshold)0.64 0.2435332 0.0027249 89.373 < 2e-16 ***
## factor(id_threshold)0.65 0.2373583 0.0027249 87.107 < 2e-16 ***
## factor(id_threshold)0.66 0.2367016 0.0027249 86.866 < 2e-16 ***
## factor(id_threshold)0.67 0.2348878 0.0027249 86.200 < 2e-16 ***
## factor(id_threshold)0.68 0.2257335 0.0027249 82.841 < 2e-16 ***
## factor(id_threshold)0.69 0.2143655 0.0027249 78.669 < 2e-16 ***
## factor(id_threshold)0.7 0.2140982 0.0027249 78.571 < 2e-16 ***
## factor(id_threshold)0.71 0.1964114 0.0027249 72.080 < 2e-16 ***
## factor(id_threshold)0.72 0.1843242 0.0027249 67.644 < 2e-16 ***
## factor(id_threshold)0.73 0.1726068 0.0027249 63.344 < 2e-16 ***
## factor(id_threshold)0.74 0.1613952 0.0027249 59.230 < 2e-16 ***
## factor(id_threshold)0.75 0.1585310 0.0027249 58.178 < 2e-16 ***
## factor(id_threshold)0.76 0.1492001 0.0027249 54.754 < 2e-16 ***
## factor(id_threshold)0.77 0.1499133 0.0027249 55.016 < 2e-16 ***
## factor(id_threshold)0.78 0.1509189 0.0027249 55.385 < 2e-16 ***
## factor(id_threshold)0.79 0.1499516 0.0027249 55.030 < 2e-16 ***
## factor(id_threshold)0.8 0.1466179 0.0027249 53.806 < 2e-16 ***
## factor(id_threshold)0.81 0.1454911 0.0027249 53.393 < 2e-16 ***
## factor(id_threshold)0.82 0.1499035 0.0027249 55.012 < 2e-16 ***
## factor(id_threshold)0.83 0.1487600 0.0027249 54.593 < 2e-16 ***
## factor(id_threshold)0.84 0.1489492 0.0027249 54.662 < 2e-16 ***
## factor(id_threshold)0.85 0.1482440 0.0027249 54.403 < 2e-16 ***
## factor(boundary)0.06 0.0012438 0.0020535 0.606 0.54470
## factor(boundary)0.07 0.0048897 0.0020535 2.381 0.01726 *
## factor(boundary)0.08 0.0082442 0.0020535 4.015 5.95e-05 ***
## factor(boundary)0.09 0.0100674 0.0020535 4.903 9.46e-07 ***
## factor(boundary)0.1 0.0159350 0.0020535 7.760 8.51e-15 ***
## factor(boundary)0.11 0.0226107 0.0020535 11.011 < 2e-16 ***
## factor(boundary)0.12 0.0291271 0.0020535 14.184 < 2e-16 ***
## factor(boundary)0.13 0.0293258 0.0020535 14.281 < 2e-16 ***
## factor(boundary)0.14 0.0272234 0.0020535 13.257 < 2e-16 ***
## factor(boundary)0.15 0.0233644 0.0020535 11.378 < 2e-16 ***
## factor(boundary)0.16 0.0165132 0.0020535 8.042 8.90e-16 ***
## factor(boundary)0.17 0.0083789 0.0020535 4.080 4.50e-05 ***
## factor(boundary)0.18 0.0054924 0.0020535 2.675 0.00748 **
## factor(boundary)0.19 -0.0007736 0.0020535 -0.377 0.70638
## factor(boundary)0.2 -0.0058439 0.0020535 -2.846 0.00443 **
## factor(boundary)0.21 -0.0085139 0.0020535 -4.146 3.38e-05 ***
## factor(boundary)0.22 -0.0130917 0.0020535 -6.375 1.83e-10 ***
## factor(boundary)0.23 -0.0176477 0.0020535 -8.594 < 2e-16 ***
## factor(boundary)0.24 -0.0216871 0.0020535 -10.561 < 2e-16 ***
## factor(boundary)0.25 -0.0232473 0.0020535 -11.321 < 2e-16 ***
## factor(boundary)0.26 -0.0275514 0.0020535 -13.417 < 2e-16 ***
## factor(boundary)0.27 -0.0295137 0.0020535 -14.373 < 2e-16 ***
## factor(boundary)0.28 -0.0317820 0.0020535 -15.477 < 2e-16 ***
## factor(boundary)0.29 -0.0349217 0.0020535 -17.006 < 2e-16 ***
## factor(boundary)0.3 -0.0366593 0.0020535 -17.852 < 2e-16 ***
## factor(boundary)0.31 -0.0384900 0.0020535 -18.744 < 2e-16 ***
## factor(boundary)0.32 -0.0401601 0.0020535 -19.557 < 2e-16 ***
## factor(boundary)0.33 -0.0398676 0.0020535 -19.415 < 2e-16 ***
## factor(boundary)0.34 -0.0426175 0.0020535 -20.754 < 2e-16 ***
## factor(boundary)0.35 -0.0414784 0.0020535 -20.199 < 2e-16 ***
## factor(boundary)0.36 -0.0427296 0.0020535 -20.808 < 2e-16 ***
## factor(boundary)0.37 -0.0449939 0.0020535 -21.911 < 2e-16 ***
## factor(boundary)0.38 -0.0448345 0.0020535 -21.834 < 2e-16 ***
## factor(boundary)0.39 -0.0454823 0.0020535 -22.149 < 2e-16 ***
## factor(boundary)0.4 -0.0454302 0.0020535 -22.124 < 2e-16 ***
## factor(boundary)0.41 -0.0465934 0.0020535 -22.690 < 2e-16 ***
## factor(boundary)0.42 -0.0469422 0.0020535 -22.860 < 2e-16 ***
## factor(boundary)0.43 -0.0498156 0.0020535 -24.259 < 2e-16 ***
## factor(boundary)0.44 -0.0492139 0.0020535 -23.966 < 2e-16 ***
## factor(boundary)0.45 -0.0492646 0.0020535 -23.991 < 2e-16 ***
## factor(boundary)0.46 -0.0523249 0.0020535 -25.481 < 2e-16 ***
## factor(boundary)0.47 -0.0509517 0.0020535 -24.812 < 2e-16 ***
## factor(boundary)0.48 -0.0516363 0.0020535 -25.146 < 2e-16 ***
## factor(boundary)0.49 -0.0540387 0.0020535 -26.316 < 2e-16 ***
## factor(boundary)0.5 -0.0536545 0.0020535 -26.129 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.124 on 335212 degrees of freedom
## Multiple R-squared: 0.4604, Adjusted R-squared: 0.4602
## F-statistic: 2252 on 127 and 335212 DF, p-value: < 2.2e-16
# f = lm(ESBG ~ factor(opinions)*factor(id_threshold)*factor(boundary), data = filter(dfi, identity))
# fs = summary(f)
I just wanna know how much variability we can explain by the full
model. But I am not able to estimate the full model, since with fully
factorized variables there are 11 177 (!sic) variables and
interactions. Dataset is rich enough for this, but memory of my PC is
not :-) Later we might try estimate the explanation by full model on
Unity. But preliminary estimate shows that we pay more than 10,000
degrees of freedom by including all the interactions, but we get
something around of 2 more percent points of variability explained – it
totally doesn’t worth for such a high price!
OK, by fully factorized main effects only model we might
explain 46 %, it means there is 54 % of variability, which is
unexplainable in principle! Resp. we can’t explain it by any variable
which we manipulated during simulation experiments. As I mentioned
above, we might try explain it via detailed description of initial
condition (however randomly generated) or via description of the course
of the simulation.
BTW, fully factorized model with main effects only is
the best (difference in BIC -71k), this model is better regarding the
BIC than the non-factorized main effects model. Just for
order, the model with non-factorized main effects explains
32.9 % of variability.